# -*- coding: utf-8 -*-
"""
@Time    : 2024/9/6 14:32 
@Author  : ZhangShenao 
@File    : 3.函数的可变参数.py 
@Desc    : 函数的可变参数

在设计函数时,如果不确定参数的数量,可以设置为可变参数
在Python中,可变参数有两种形式:
1. *args: 非关键字可变参数,这些参数在函数内部会被当作元组(tuple)来处理
2. **kwargs: 关键字可变参数,传参格式为key=value,这些参数在函数内部会被当作字典(dict)来处理
"""


# 定义函数,并设置可变参数
def add(*args) -> int:
    """加法函数"""

    print(f"type of *args is: {type(args)}")  # <class 'tuple'>
    result = 0
    for i in args:
        result += i
    return result


if __name__ == '__main__':
    # 在调用可变参数的函数时,参数数量可以为任意多个
    sum1 = add(1, 2, 3)
    print(sum1)

    sum2 = add(5, 6, 7, 8, 9)
    print(sum2)
